/*
 * UART.c
 *
 *  Created on: 6.11.2012
 *      Author: Z183797
 */
#include "UART.h"
#include <avr/io.h>
#include <avr/interrupt.h>


/////////////////////////////
//! Funkce: init_UART      //
//! Inicializace UART      //
/////////////////////////////
void init_UART()
{
        UCSRA|=0x00;
    UBRRL|=0x0C;
        UCSRB|=0x18;  // povolit vysilani a prijem
    UCSRC|=0x86;  // ramec dat:  8 datovych, 1 stop bit, bey parity
    UCSRB |= (1 << RXCIE);// Interrupt od UART RXC
}

/////////////////////////////
//! Funkce: read_UART      //
//! Cteni z UART           //
/////////////////////////////
unsigned char read_UART(void)
{
        while(!(UCSRA&0x80))
     ;
    return UDR;
}

/////////////////////////////
//! Funkce: write_Character//
//! Zapis znaku na UART    //
/////////////////////////////
void write_Character(const char znak)
{
        while (!(UCSRA&0x20))
    ;
    UDR = znak;
}

/////////////////////////////
//! Funkce: write_UART     //
//! Zapis na UART          //
/////////////////////////////
void write_UART (const char *text)
{
        while (*text)
        {
        write_Character(*(text++));
        }
}



